/***
 * 公共工具类
 */

export default {

    /**
     * 返回页面分页数据应请求的页数(eg:删除数据后重新请求数据的页数)
     * @param total 总条数
     * @param size 当前页面显示每页的条数
     * @param currentPage 当前所在的页
     */
    getPageNum(total, size, currentPage) {
        --total;
        let num = Math.ceil(total / size);
        num = currentPage < num ? currentPage : num;
        return num < 1 ? 1 : num;
    },
    /**
     * 获取当前时间的周一日期
     */
    getCurrentTimeMondayDate() {
        let now = new Date(); //当前时间
        let oneDayLong = 24 * 60 * 60 * 1000;//一天的毫秒数
        let c_time = now.getTime();//当前毫秒数
        let c_day = now.getDay() || 7;//当前时间周几
        let monday_time = c_time - (c_day - 1) * oneDayLong;//周一的毫秒数
        return new Date(monday_time);
    },

    /**
     * 薪资范围
     */
    getSalaryrRange() {
        return ['2K以下', '2K-5K', '5K-8K', '8K-10K', '10K-12K', '12K以上'];
    },

    /**
     * 学历
     * @returns {string[]}
     */
    getEduBackground() {
        return ['博士', '硕士', '本科', '专科', '高中', '初中', '小学'];
    },
    /**
     * 年龄范围
     */
    getAgeRange() {
        return ['18-25', '25-30', '30-35', '35-40', '40-60'];
    },
    /**
     * 性别
     */
    getSexOption() {
        return [{label: '男女不限', value: 0}, {label: '男', value: 1}, {label: '女', value: 2}];
    },

    /**
     * 将第二个对象中对应的字段值赋值到返回对象中对应的字段
     * 入参： 必须都为对象
     * @param obj
     * @param otherObj
     * @returns {*}
     */
    setValueFromOtherObjectByKey(obj, otherObj) {
        for (let key in obj) {
            obj[key] = this.getValueByKey(key, otherObj);
        }
        return obj;

    },
    getValueByKey(key, otherObj) {
        let result = null;
        for (let k in otherObj) {
            if (key === k) {
                result = otherObj[k];
                break;
            }
        }
        return result;
    },


    /**
     * 将一个对象的字段清空（设为null）
     * @param obj
     * @returns {*}
     */
    clearObjectValue(obj) {
        for (let key in obj) {
            obj[key] = null;
        }
        return obj;

    }

}
